home *** CD-ROM | disk | FTP | other *** search
- ; Example interchange sort by Sam High
- ; Shows simulated Arrays
- ;
- array1='sam'
- array2='albert'
- array3='zoot'
- array4='polly'
- array5='frank'
- array6='doug'
- array7='lionel'
- array8='sam'
- array9='albert'
- array10='albert'
- array11='zoot'
- array12='polly'
- array13='frank'
- array14='doug'
- array15='lionel'
- ;debug(@ON)
- n=15
- inchange=@TRUE
- pass=1
- :Passit
- if !((pass <= n-1) && inchange) then goto Done
- inchange=@FALSE
- j=1
- :Innerloop
- if j > n-pass then goto IncPass
- k=j+1
- if array%j% <= array%k% then goto IncJ
- inchange=@TRUE
- k=j+1
- hold=array%j%
- array%j%=array%k%
- array%k%=hold
- :IncJ
- j=j+1
- goto Innerloop
- :IncPass
- pass=pass+1
- goto Passit
-
- :Done
- i=1
- k=''
- :GetIt
- if i > 7 then goto Showit
- k=strcat(k,' ',array%i%)
- i=i+1
- goto GetIt
-
- :Showit
- Message('Sorted Array',k)
-